CouchDB সার্ভারটির নিরাপত্তা বাড়ানোর জন্য SSL (Secure Socket Layer) বা TLS (Transport Layer Security) সেটআপ করা খুবই গুরুত্বপূর্ণ। SSL ব্যবহার করে আপনি সার্ভারের সাথে সংযুক্তির সময় ডেটা এনক্রিপ্ট করতে পারেন, যা ডেটার গোপনীয়তা ও নিরাপত্তা নিশ্চিত করে। নিচে CouchDB এর সঙ্গে SSL সেটআপ করার বিস্তারিত প্রক্রিয়া আলোচনা করা হলো।
CouchDB এর সঙ্গে SSL সেটআপ করতে প্রথমে আপনাকে একটি SSL সার্টিফিকেট তৈরি করতে হবে। আপনি নিজে একটি Self-signed certificate তৈরি করতে পারেন অথবা একটি বিশ্বস্ত সার্টিফিকেট অথরিটি (CA) থেকে সার্টিফিকেট কিনতে পারেন।
SSL সার্টিফিকেট তৈরি করতে OpenSSL ব্যবহার করা যেতে পারে। নিচের কমান্ডটি দিয়ে সার্টিফিকেট এবং প্রাইভেট কি তৈরি করা যাবে:
openssl req -new -x509 -days 365 -nodes -out /etc/couchdb/couchdb-cert.pem -keyout /etc/couchdb/couchdb-key.pem
এখানে:
এটি ১ বছরের জন্য একটি Self-signed certificate তৈরি করবে। আপনি এই সার্টিফিকেট ফাইল দুটি CouchDB কনফিগারেশনে ব্যবহার করবেন।
CouchDB এর কনফিগারেশন ফাইলটি local.ini এবং default.ini ফাইলের মধ্যে থাকে, যা সাধারণত /opt/couchdb/etc বা /etc/couchdb ডিরেক্টরিতে অবস্থান করে। SSL সেটআপ করার জন্য এই ফাইলগুলোতে কিছু পরিবর্তন করতে হবে।
CouchDB এর কনফিগারেশন ফাইলটি খুলুন:
sudo nano /opt/couchdb/etc/local.ini
[httpd] সেকশনটি খুঁজে বের করুন এবং SSL সেটিংস যোগ করুন:
[httpd]
enable_ssl = true
ssl_cert_file = /etc/couchdb/couchdb-cert.pem
ssl_key_file = /etc/couchdb/couchdb-key.pem
ssl_version = tlsv1.2
ssl_ciphers = HIGH:!aNULL:!MD5
এখানে:
true
করতে হবে।SSL কনফিগারেশন সম্পূর্ণ করার পর, CouchDB সার্ভিসটি পুনরায় রিস্টার্ট করতে হবে যাতে নতুন পরিবর্তনগুলি কার্যকর হয়।
sudo systemctl restart couchdb
অথবা, যদি আপনি service কমান্ড ব্যবহার করতে চান:
sudo service couchdb restart
SSL কনফিগারেশন সঠিকভাবে কাজ করছে কিনা তা পরীক্ষা করতে, আপনি ব্রাউজারে CouchDB সার্ভার অ্যাক্সেস করতে পারেন HTTPS প্রোটোকলের মাধ্যমে। উদাহরণস্বরূপ:
https://your-server-ip:5984
এখানে:
এটি HTTPS প্রোটোকল দিয়ে সংযোগ স্থাপন করবে এবং যদি SSL সঠিকভাবে কনফিগার করা থাকে, তবে ব্রাউজারে নিরাপত্তা চিহ্ন প্রদর্শিত হবে।
CURL কমান্ডের মাধ্যমে আপনি SSL সংযোগ পরীক্ষা করতে পারেন:
curl -X GET https://localhost:5984 -k
এখানে:
-k
ফ্ল্যাগ ব্যবহার করলে SSL সার্টিফিকেটের ভ্যালিডিটি চেক করা হবে না, যা self-signed সার্টিফিকেটের জন্য উপযুক্ত।যদি আপনি Self-signed certificate ব্যবহার না করতে চান এবং তৃতীয় পক্ষের CA থেকে একটি SSL সার্টিফিকেট ব্যবহার করতে চান, তবে আপনি সঠিক SSL সার্টিফিকেট এবং CA সার্টিফিকেট ইনস্টল করতে হবে। এই সার্টিফিকেটগুলি পাবেন সার্টিফিকেট অথরিটি (যেমন: Let's Encrypt, Comodo, Digicert) থেকে।
CouchDB-তে SSL সেটআপ নিরাপদ HTTPS সংযোগ স্থাপন করার জন্য গুরুত্বপূর্ণ। এটি ডেটার গোপনীয়তা ও নিরাপত্তা সুনিশ্চিত করে, বিশেষ করে যখন ডেটাবেসটি পাবলিক নেটওয়ার্কে ব্যবহৃত হয়। Self-signed certificate বা CA সার্টিফিকেট ব্যবহার করে আপনি সহজেই SSL সংযোগ স্থাপন করতে পারেন।
common.read_more